package com.jiuqi.ccp.generator.dao.pojo;

import java.io.Serializable;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;

/** 
 *        @hibernate.class
 *         table="CCP_INFO_FUNC"
 *     
*/
public class CcpInfoFunc implements Serializable {

    /** identifier field */
    private String cifGuid;

    /** nullable persistent field */
    private String cibGuid;

    /** persistent field */
    private String isAlive;

    /** persistent field */
    private String funcName;

    /** persistent field */
    private String funcBody;

    /** persistent field */
    private String funcBusiSense;

    /** persistent field */
    private String funcParamNum;

    /** full constructor */
    public CcpInfoFunc(String cifGuid, String cibGuid, String isAlive, String funcName, String funcBody, String funcBusiSense, String funcParamNum) {
        this.cifGuid = cifGuid;
        this.cibGuid = cibGuid;
        this.isAlive = isAlive;
        this.funcName = funcName;
        this.funcBody = funcBody;
        this.funcBusiSense = funcBusiSense;
        this.funcParamNum = funcParamNum;
    }

    /** default constructor */
    public CcpInfoFunc() {
    }

    /** minimal constructor */
    public CcpInfoFunc(String cifGuid, String isAlive, String funcName, String funcBody, String funcBusiSense, String funcParamNum) {
        this.cifGuid = cifGuid;
        this.isAlive = isAlive;
        this.funcName = funcName;
        this.funcBody = funcBody;
        this.funcBusiSense = funcBusiSense;
        this.funcParamNum = funcParamNum;
    }

    /** 
     *            @hibernate.id
     *             generator-class="assigned"
     *             type="java.lang.String"
     *             column="CIF_GUID"
     *         
     */
    public String getCifGuid() {
        return this.cifGuid;
    }

    public void setCifGuid(String cifGuid) {
        this.cifGuid = cifGuid;
    }

    /** 
     *            @hibernate.property
     *             column="CIB_GUID"
     *             length="32"
     *         
     */
    public String getCibGuid() {
        return this.cibGuid;
    }

    public void setCibGuid(String cibGuid) {
        this.cibGuid = cibGuid;
    }

    /** 
     *            @hibernate.property
     *             column="IS_ALIVE"
     *             length="1"
     *             not-null="true"
     *         
     */
    public String getIsAlive() {
        return this.isAlive;
    }

    public void setIsAlive(String isAlive) {
        this.isAlive = isAlive;
    }

    /** 
     *            @hibernate.property
     *             column="FUNC_NAME"
     *             length="20"
     *             not-null="true"
     *         
     */
    public String getFuncName() {
        return this.funcName;
    }

    public void setFuncName(String funcName) {
        this.funcName = funcName;
    }

    /** 
     *            @hibernate.property
     *             column="FUNC_BODY"
     *             length="200"
     *             not-null="true"
     *         
     */
    public String getFuncBody() {
        return this.funcBody;
    }

    public void setFuncBody(String funcBody) {
        this.funcBody = funcBody;
    }

    /** 
     *            @hibernate.property
     *             column="FUNC_BUSI_SENSE"
     *             length="500"
     *             not-null="true"
     *         
     */
    public String getFuncBusiSense() {
        return this.funcBusiSense;
    }

    public void setFuncBusiSense(String funcBusiSense) {
        this.funcBusiSense = funcBusiSense;
    }

    /** 
     *            @hibernate.property
     *             column="FUNC_PARAM_NUM"
     *             length="2"
     *             not-null="true"
     *         
     */
    public String getFuncParamNum() {
        return this.funcParamNum;
    }

    public void setFuncParamNum(String funcParamNum) {
        this.funcParamNum = funcParamNum;
    }

    public String toString() {
        return new ToStringBuilder(this)
            .append("cifGuid", getCifGuid())
            .toString();
    }

    public boolean equals(Object other) {
        if ( !(other instanceof CcpInfoFunc) ) return false;
        CcpInfoFunc castOther = (CcpInfoFunc) other;
        return new EqualsBuilder()
            .append(this.getCifGuid(), castOther.getCifGuid())
            .isEquals();
    }

    public int hashCode() {
        return new HashCodeBuilder()
            .append(getCifGuid())
            .toHashCode();
    }

}
